home *** CD-ROM | disk | FTP | other *** search
/ Delphi 5 for Professionals / DELPHI5.iso / AddOns / Components / TEECHART / Src Code / ARROWEDI.PAS < prev    next >
Encoding:
Pascal/Delphi Source File  |  1998-10-24  |  3.2 KB  |  123 lines

  1. {**********************************************}
  2. {   TArrowSeries Editor Dialog                 }
  3. {   Copyright (c) 1996-98 by David Berneda     }
  4. {**********************************************}
  5. {$I teedefs.inc}
  6. unit ArrowEdi;
  7.  
  8. interface
  9.  
  10. uses
  11.   SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
  12.   Forms, Dialogs, StdCtrls, Buttons, ArrowCha, ExtCtrls
  13.   {$IFDEF D1}
  14.   , TeeUpDow, Spin
  15.   {$ELSE}
  16.   , ComCtrls
  17.   {$ENDIF};
  18.  
  19.  
  20. type
  21.   TArrowSeriesEditor = class(TForm)
  22.     BPen: TBitBtn;
  23.     BBrush: TBitBtn;
  24.     Label1: TLabel;
  25.     SEArrowWidth: TEdit;
  26.     Label2: TLabel;
  27.     SEArrowHeight: TEdit;
  28.     GroupBox1: TGroupBox;
  29.     CBColorEach: TCheckBox;
  30.     BArrowColor: TBitBtn;
  31.     SHArrowColor: TShape;
  32.     UDArrowWidth: TUpDown;
  33.     UDArrowHeight: TUpDown;
  34.     procedure CBColorEachClick(Sender: TObject);
  35.     procedure BArrowColorClick(Sender: TObject);
  36.     procedure BPenClick(Sender: TObject);
  37.     procedure BBrushClick(Sender: TObject);
  38.     procedure SEArrowWidthChange(Sender: TObject);
  39.     procedure SEArrowHeightChange(Sender: TObject);
  40.     procedure FormShow(Sender: TObject);
  41.     procedure SHArrowColorMouseUp(Sender: TObject; Button: TMouseButton;
  42.       Shift: TShiftState; X, Y: Integer);
  43.     procedure FormCreate(Sender: TObject);
  44.   private
  45.     { Private declarations }
  46.     CreatingForm : Boolean;
  47.   public
  48.     { Public declarations }
  49.     Arrow : TArrowSeries;
  50.   end;
  51.  
  52. implementation
  53.  
  54. {$R *.DFM}
  55. Uses PenDlg, BrushDlg, TeEngine, TeeProcs;
  56.  
  57. procedure TArrowSeriesEditor.CBColorEachClick(Sender: TObject);
  58. begin
  59.   Arrow.ColorEachPoint:=CBColorEach.Checked;
  60.   BArrowColor.Enabled:=not Arrow.ColorEachPoint;
  61.   if Arrow.ColorEachPoint then Arrow.Pointer.Brush.Color:=clTeeColor;
  62.   SHArrowColor.Visible:=BArrowColor.Enabled;
  63. end;
  64.  
  65. procedure TArrowSeriesEditor.BArrowColorClick(Sender: TObject);
  66. begin
  67.   With Arrow do
  68.   begin
  69.     SeriesColor:=EditColor(Self,SeriesColor);
  70.     SHArrowColor.Brush.Color:=SeriesColor;
  71.   end;
  72. end;
  73.  
  74. procedure TArrowSeriesEditor.BPenClick(Sender: TObject);
  75. begin
  76.   EditChartPen(Self,Arrow.Pointer.Pen);
  77. end;
  78.  
  79. procedure TArrowSeriesEditor.BBrushClick(Sender: TObject);
  80. begin
  81.   EditChartBrush(Self,Arrow.Pointer.Brush);
  82. end;
  83.  
  84. procedure TArrowSeriesEditor.SEArrowWidthChange(Sender: TObject);
  85. begin
  86.   if not CreatingForm then Arrow.ArrowWidth:=UDArrowWidth.Position;
  87. end;
  88.  
  89. procedure TArrowSeriesEditor.SEArrowHeightChange(Sender: TObject);
  90. begin
  91.   if not CreatingForm then Arrow.ArrowHeight:=UDArrowHeight.Position;
  92. end;
  93.  
  94. procedure TArrowSeriesEditor.FormShow(Sender: TObject);
  95. begin
  96.   Screen.Cursor:=crDefault;
  97.   Arrow:=TArrowSeries(Tag);
  98.   With Arrow do
  99.   begin
  100.     CBColorEach.Checked    :=ColorEachPoint;
  101.     UDArrowWidth.Position  :=ArrowWidth;
  102.     UDArrowHeight.Position :=ArrowHeight;
  103.     SHArrowColor.Brush.Color:=SeriesColor;
  104.   end;
  105.   SHArrowColor.Cursor:=crTeeHand;
  106.   CreatingForm:=False;
  107. end;
  108.  
  109. procedure TArrowSeriesEditor.SHArrowColorMouseUp(Sender: TObject;
  110.   Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
  111. begin
  112.   BArrowColorClick(Self);
  113. end;
  114.  
  115. procedure TArrowSeriesEditor.FormCreate(Sender: TObject);
  116. begin
  117.   CreatingForm:=True;
  118. end;
  119.  
  120. initialization
  121.   RegisterClass(TArrowSeriesEditor);
  122. end.
  123.